#ifndef MUSIC_H
#define MUSIC_H
#include <QUrl>

class Music
{
public:
    Music();
    Music(QUrl url);

    void setMusicId(const QString &musicId);
    void setMusicName(const QString &musicName);
    void setMusicSinger(const QString &musicSinger);
    void setMusicAlbumn(const QString &musicAlbum);
    void setMusicTime(uint64_t musicTime);
    void setIsLike(bool isLike);
    void setIsHistory(bool isHistory);
    void setMusicUrl(QUrl musicUrl);

    QString getMusicName() const;
    QString getMusicSinger() const;
    QString getMusicAlbumn() const;
    uint64_t getMusicTime() const;
    bool getIsLike() const;
    bool getIsHistory() const;
    QUrl getMusicUrl() const;
    QString getMusicId();
    QString getMusicLrcPath();

    void insertMusicToDB();

private:
    void parseMediaMetaMusic();

private:
    //歌曲ID
    QString musicId;
    //歌曲名称
    QString musicName;
    //歌手名称
    QString musicSinger;
    //专辑名称
    QString musicAlbum;
    //歌曲时长(ms)
    uint64_t musicTime;
    //是否收藏
    bool isLike;
    //是否最近播放
    bool isHistory;
    //音乐url
    QUrl musicUrl;
};

#endif // MUSIC_H
